java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
org.nlogo.lite.AppletPanel
org.nlogo.lite.InterfaceComponent
public class InterfaceComponent
This component is a wrapper around the contents of the interface panel that can be embedded in another application
See the "Controlling" section of the NetLogo User Manual for example code.
| Nested Class Summary | |
|---|---|
static interface |
InterfaceComponent.InvocationListener
Callback interface used by reportAndCallback(). |
| Nested classes/interfaces inherited from class javax.swing.JComponent |
|---|
JComponent.AccessibleJComponent |
| Nested classes/interfaces inherited from class java.awt.Component |
|---|
Component.BaselineResizeBehavior |
| Field Summary |
|---|
| Fields inherited from class javax.swing.JComponent |
|---|
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW |
| Fields inherited from class java.awt.Component |
|---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
| Fields inherited from interface java.awt.image.ImageObserver |
|---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| Constructor Summary | |
|---|---|
InterfaceComponent(Frame frame)
|
|
| Method Summary | |
|---|---|
void |
compile()
Recompiles the model. |
void |
exportWorld(PrintWriter writer)
|
Object |
getLinkParent()
internal use only |
RenderedImage |
getPlotContentsAsImage(String name)
returns a graphical image of the current contents of the plot with the given name. |
RenderedImage |
getViewImage()
returns the current contents of the NetLogo Graphics Window. |
void |
hideWidget(String name)
hides a particular widget. |
void |
makeWidget(String text)
Adds new widget to Interface tab given its specification, in the same (undocumented) format found in a saved model. |
void |
open(String path)
Opens a model stored in a file. |
void |
pressButton(String name)
Simulates a button press in the current model, exactly as if the user had pressed the button. |
void |
reportAndCallback(String code,
InterfaceComponent.InvocationListener handler)
evaluates a reporter and return the value to continuation object. |
void |
showWidget(String name)
reveals a particular widget. |
void |
startLogging(Reader reader,
String username)
Starts NetLogo logging using the given file and username |
void |
startLogging(String properties,
String username)
Starts NetLogo logging using the given file and username |
| Methods inherited from class org.nlogo.lite.AppletPanel |
|---|
addLinkComponent, command, commandLater, getLinkChildren, getProcedures, handle, main, openFromSource, report, requestFocus, setAdVisible, setPrefix, setProcedures |
| Methods inherited from class javax.swing.JPanel |
|---|
getAccessibleContext, getUI, getUIClassID, setUI, updateUI |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public InterfaceComponent(Frame frame)
| Method Detail |
|---|
public Object getLinkParent()
getLinkParent in interface org.nlogo.window.Event.LinkChildpublic void compile()
setProcedures().
AppletPanel.setProcedures(java.lang.String)public void makeWidget(String text)
text - the widget specificationpublic void hideWidget(String name)
showWidget(). This method
uses the "display name" to identify the widget. Display names are not
necessarily unique within a particular model. It is only safe to use this
method on widgets with unique display names. Otherwise the behavior is
unspecified.
name - the display name of the widget to hide.hideWidget(java.lang.String)public void showWidget(String name)
hideWidget(). This method uses the "display name" to identify the
widget. Display names are not necessarily unique within a particular model.
It is only safe to use this method on widgets with unique display names.
Otherwise the behavior is unspecified.
name - the display name of the widget to reveal.hideWidget(java.lang.String)
public void open(String path)
throws IOException,
org.nlogo.window.InvalidVersionException
path - the path (absolute or relative) of the NetLogo model to open.
IOException
org.nlogo.window.InvalidVersionException
public void startLogging(String properties,
String username)
properties - path to the XML properties file as defined by the log4j dtdusername - user defined username, this should be a unique identifier
public void startLogging(Reader reader,
String username)
reader - a reader that contains an XML properties file as defined by the log4j dtdusername - user defined username, this should be a unique identifierpublic void pressButton(String name)
public RenderedImage getViewImage()
public void exportWorld(PrintWriter writer)
writer - to writer the contents of the export world
featurepublic RenderedImage getPlotContentsAsImage(String name)
name - the display name of the widget to reveal.
public void reportAndCallback(String code,
InterfaceComponent.InvocationListener handler)
report() from the event
thread, this method creates a new thread to call report() and
then passes the result to the given InvocationListener.
This method may be called from any thread, including the AWT Event Thread.